package com.ruoyi.system.api.service;

import com.ruoyi.system.api.ResponseWithData;
import com.ruoyi.system.api.domain.ServiceDetails;
import java.util.List;

/**
 * 工程师FSE计划详情 工程师FSE计划详情（服务通知子）Service接口
 * 
 * @author shihx
 * @date 2020-03-07
 */
public interface IServiceDetailsService 
{
    /**
     * 查询工程师FSE计划详情 工程师FSE计划详情（服务通知子）
     * 
     * @param id 工程师FSE计划详情 工程师FSE计划详情（服务通知子）ID
     * @return 工程师FSE计划详情 工程师FSE计划详情（服务通知子）
     */
    public ServiceDetails selectServiceDetailsById(Long id);

    /**
     * 查询工程师FSE计划详情 工程师FSE计划详情（服务通知子）列表
     * 
     * @param serviceDetails 工程师FSE计划详情 工程师FSE计划详情（服务通知子）
     * @return 工程师FSE计划详情 工程师FSE计划详情（服务通知子）集合
     */
    public List<ServiceDetails> selectServiceDetailsList(ServiceDetails serviceDetails);

    /**
     * 查询工程师 任务详情
     * @param serviceNo
     * @param fseId
     * @return
     */
    public ServiceDetails selectServiceDetails(String serviceNo, String fseId);

    /**
     * 新增工程师FSE计划详情 工程师FSE计划详情（服务通知子）
     * 
     * @param serviceDetails 工程师FSE计划详情 工程师FSE计划详情（服务通知子）
     * @return 结果
     */
    public int insertServiceDetails(ServiceDetails serviceDetails);

    /**
     * 修改工程师FSE计划详情 工程师FSE计划详情（服务通知子）
     * 
     * @param serviceDetails 工程师FSE计划详情 工程师FSE计划详情（服务通知子）
     * @return 结果
     */
    public int updateServiceDetails(ServiceDetails serviceDetails);

    /**
     * 批量删除工程师FSE计划详情 工程师FSE计划详情（服务通知子）
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteServiceDetailsByIds(String ids);

    /**
     * 删除工程师FSE计划详情 工程师FSE计划详情（服务通知子）信息
     * 
     * @param id 工程师FSE计划详情 工程师FSE计划详情（服务通知子）ID
     * @return 结果
     */
    public int deleteServiceDetailsById(Long id);

    /**
     *  查询服务单下实习人员列表
     *
     * @param serviceNo
     * @param fseName
     * @return com.ruoyi.system.api.ResponseWithData<?>
     * @author yzg
     * @date 2020/3/23 3:56 下午
     */
    public List<ServiceDetails> selectTrainPeople(String serviceNo, String fseName);

    /**
     * 删除工程师任务计划
     * @methodName: deleteServiceDetails
     * @description: TODO
     * @param serviceNoticeId
     * @param enginnerId
     * @return: com.ruoyi.system.api.ResponseWithData<?>
     * @author: shihx
     * @date: 2020-04-22 19:30
    **/
    public ResponseWithData<?> deleteServiceDetails(String serviceNoticeId, String enginnerId,String sendenginnerId);

}
